home *** CD-ROM | disk | FTP | other *** search
- Path: grafix.xs4all.nl!john.hendrikx
- Date: Sun, 10 Mar 96 21:13:49 GMT+1
- Newsgroups: comp.sys.amiga.programmer
- Distribution: world
- Subject: Re: Amiga doesn`t need Pl
- MIME-Version: 1.0
- Content-Type: text/plain; charset=iso-8859-1
- Content-Transfer-Encoding: 8bit
- From: john.hendrikx@grafix.xs4all.nl (John Hendrikx)
- Message-ID: <john.hendrikx.4ku6@grafix.xs4all.nl>
- Organization: Private
-
- In a message of 08 Mar 96 "jyrki Saarinen" wrote to All:
-
- >> Most of the stuff I've seen here is 'demo' only. For example, using 64K
- >> for a single texture and stuff like 256K loop-up tables are quite
- >> unrealistic for real games.
-
- jS> Please.. Using 64k alignment is not going to stop you putting several
- jS> smaller textures into one 64k area, or have several of them thus
- jS> needing only 64k of extra memory.
-
- No, not alignment, I said 64K/texture. Some of the loops made use of that to
- gain 1 or 2 cycles. What percentage of drawing a frame do you people think the
- innerloops take anyway? My guess would be around 30-50% (*) depending on the
- engine (REAL life ones), I doubt that warrants wasting such huge amounts of
- memory.
-
- (*) 30-50%:
-
- Each DOOM scene has usually atleast 320 different wall-columns to be drawn,
- probably much more depending on how many different height-levels are in view.
- On average I think around 1000-2000 seperate wall-columns to be drawn would be
- a good guess (for a 320 pixel wide screen). Something similair goes for the
- floor and ceilings, I guess that around 500-1000 different horizontal
- floor/ceiling lines will need to be drawn per frame.
-
- This means that the 'outerloop' (let's assume that floor/ceiling and walls all
- use the same outerloop) gets executed around 1500-3000 times. The outerloop
- usually contains a couple of high precision divisions and multiplications
- (especially for the floors/ceilings). Around 500 cycles should be spend there
- easily, even for a fairly simple DOOM clone.
-
- The 'innerloop' is executed around 320x200 times, costing around 20(?)x64000
- cycles (all for 030). The 'outerloop' takes around 1500*500 to 3000*500
- cycles.
-
- Innerloop +/- 1280K cycles
- Outerloop +/- 750K-1500K cycles
-
- Now add the outer-outerloop (ie, the BSP handling and some pre-calculation and
- pre-rotation which only happens once per wall-section), the C2P crap,
- sound-fx(?), AI and so on and you'll find that those innerloops are certainly
- not worth wasting that much memory for to just get 1 or 2 extra cycles.
- *UNLESS* of course you guys are talking about demo-code where you could get
- away with this kind of stuff...
-
- Grtz John
-
- -----------------------------------------------------------------------
- John.Hendrikx@grafix.xs4all.nl TextDemo/FastView/Etc... development
- -----------------------------------------------------------------------
- -- Via Xenolink 1.985B5, XenolinkUUCP 1.1
-